<template>
  <div v-if="isShow">
    <el-card class="mt12" v-show="cities.length >=1">
      <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
      <span class="oneApply" @click="Apply">一键申请</span>
      <span class="oneRecommend">根据求职意向给您推荐</span>
      <span class="oneChange" @click="ChangeIt">换一批</span>
    </el-card>
    <el-card class="listContainer mt11" v-for="(item, index) in cities" :key="index">
      <el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange">
        <div class="list">
          <div class="leftContent">
            <el-checkbox :label="item" :key="index">
              <span></span>
            </el-checkbox>
            <div class="info">
              <div class="name" @click="enterDetailsPage(item)">{{item.name}}</div>
              <div class="ageAdress">
                <span class="salary">{{item.wageText}}</span>
                <p class="area">
                  <span class="prev-line">{{item.workAreaText || '地区不限'}}</span>
                  <span class="prev-line">{{item.workExpText || '经验不限'}}</span>
                  <span class="prev-line">{{item.educationText || '学历不限'}}</span>
                </p>
              </div>
              <div class="tag-group">
                <el-tag v-for="(allure,keyIndex) in item.allureText" :key="keyIndex" type="info" effect="plain">
                  {{ allure }}</el-tag>
              </div>
            </div>
          </div>
          <div class="rightContent">
            <div class="compaName">
              <div class="info">
                <div class="name" @click="companyInfoDetailsPage(item)">
                  {{item.companyInfo ? item.companyInfo.name :'暂无'}}</div>
                <div class="compaNameageAdress">
                  <p class="area">
                    <span class="prev-line">{{item.companyInfo ? item.companyInfo.natureText :'暂无'}}</span>
                    <span class="prev-line">{{item.companyInfo ? item.companyInfo.scaleText : '暂无'}}</span>
                  </p>
                </div>
                <div class="collectionCon">
                  <span class="Collection" v-if="!item.favorite"
                    v-on:click.stop="favoriteSave(item.id, item.companyId)">
                    <img src="../../../assets/img/icon/shoucang.png" alt="">&nbsp;收藏</span>
                  <span class="Collection active" v-if="item.favorite" v-on:click.stop="deleteFavorite(item.id)">
                    <img src="../../../assets/img/icon/quxiaoshoucang.png" alt="">&nbsp;已收藏</span>
                </div>
              </div>
            </div>
            <div class="companyLogo">
              <div class="logo">
                <img :src="((item.companyInfo && item.companyInfo.logo) || require('../../../assets/img/qiye.png'))"
                  alt />
              </div>
              <span class="oneApplyTwo" v-on:click.stop="oneDeliverSaveDialog(item)">一键申请</span>
            </div>
          </div>
        </div>
      </el-checkbox-group>
    </el-card>
    <el-card class="noData mt12" v-show="cities<=0">
      暂无数据
    </el-card>
    <!-- 选择 简历弹框 -->
    <el-dialog width="30%" class="elDialog" :visible.sync="innerVisible" :append-to-body="false" @close="closeResume">
      <p slot="title" class="dialogHeader">
        <span>请选择投递的简历</span>
      </p>
      <el-col :span="24">
        <div>
          <el-select v-model="resumeValue" placeholder="请选择简历" popper-class="popper-class" @change="resumeValId">
            <el-option v-for="item in resumelist" :key="item.id" :label="item.title" :value="item.id"></el-option>
          </el-select>
          <div class="checkouts">
            <el-checkbox v-model="resumeChecked">将该份简历设置为快速投递(推荐)</el-checkbox>
          </div>
        </div>
      </el-col>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="deliverSave_determine" v-if="!isAll">立即投递</el-button>
        <el-button type="primary" @click="allDeliverSave" v-else>立即投递</el-button>
      </div>
    </el-dialog>
    <!-- feat:该岗位为樟树市人才服务代招职位，如需投递请联系招聘负责人。 -->
    <el-dialog class="elDialog jonDz" :visible.sync="isJobType" width="30%" style="margin-top:15vh"
      :before-close="closeResume">
      <p slot="title" class="dialogHeader">
        <span>申请职位</span>
      </p>
      <p class="jobItem">该岗位为樟树市人才服务代招职位，如需投递请联系招聘负责人。</p>
      <p class="jobItem">联系人：{{companyInfo.contact || '暂无'}}</p>
      <p class="jobItem">联系电话：{{companyInfo.phone || '暂无'}}</p>
      <p class="jobItem">座机：{{companyInfo.tel || '暂无'}}</p>
      <p class="jobItem">联系邮箱：{{companyInfo.mail || '暂无'}}</p>
      <span slot="footer" class="dialog-footer">
        <el-button type="primary" @click="closeResume">确 定</el-button>
      </span>
    </el-dialog>
  </div>
</template>

<script>
import {
  getExpressResume,
  listPagesTj,
  favoriteSave,
  deliverSave,
  deleteFavorite,
  gitInterface,
  updateExpress,
  resumeDetails
} from '../../../api/Mycollection';
import { applyTotal, collectTotal } from '../../../api/personalCenter.js';
export default {
  name: 'Recommend',
  props: {
    recommenid: {
      type: '',
      default: ''
    }
  },
  data () {
    return {
      // 是都全部申请
      isAll: false,
      // 简历列表
      resumelist: [],
      //  选中简历
      resumeValue: '',
      // 简历id
      resumeId: '',
      // 将该份简历设置为快速投递
      resumeChecked: false,
      // 简历弹框 隐藏显示 开关
      outerVisible: false,
      innerVisible: false,

      isShow: true,
      checkAll: false,
      checkedCities: [],
      cities: [],
      isIndeterminate: false,
      query: {
        arr: [
          // {
          //   column: 'min_wage',
          //   type: 'gt',
          //   value: ''
          // },
          // {
          //   column: 'max_wage',
          //   type: 'lt',
          //   value: ''
          // }
          { column: 'min_wage', type: 'le', value: null }, // hopeWage
          { column: 'max_wage', type: 'ge', value: null }, // hopeWage
          { column: 'person_work_place', type: '', value: '天元区' }, //  workPlaceText
          { column: 'person_hope_trade', type: '', value: '["500020000"]' }, // hopeTrade
          { column: 'person_hope_job', type: '', value: '["15000100190000"]' }, // hopeJob
          { column: 'status', type: 'eq', value: 1 },
          { "column": "include", "type": "", "value": "D,CI,F" },
          { column: "re_resume_deliver_user_id", type: "", value: "userId" } //re_resume_deliver_user_id
        ],
        sort: '',
        page: 1,
        size: 5
      },
      url: '',
      // feat： 待招职位弹框
      isJobType: false,
      // 公司信息
      companyInfo: {}
    };
  },
  methods: {
    // 是否全选
    handleCheckAllChange (val) {
      this.checkedCities = val ? this.cities : [];
      this.isIndeterminate = false;
    },
    // 单个选择
    handleCheckedCitiesChange (value) {
      let checkedCount = value.length;
      this.checkAll = checkedCount === this.cities.length;
      this.isIndeterminate = checkedCount > 0 && checkedCount < this.cities.length;
    },
    // 查询 简历相关信息 根据简历信息查询推荐简历列表 // 暂不使用（如有是需要更改组件需要跟我说 qixiaofei）
    getExpressResume () {
      getExpressResume(this.resumeId).then(res => {
        console.log(res, '需要的')
        if (res.success) {
          let data = res.data;
          if (!data.id) {
            this.isShow = false;
            return false;
          }
          //   this.getListPagetj()
          //   这里调用查询推荐简历列表的接口
          //   console.log(data, '获取数据···············')
          this.query.arr[0].value = Number(data.hopeWage); // data.minWage
          this.query.arr[1].value = Number(data.hopeWage); // data.maxWage
          this.query.arr[2].value = data.workPlaceText; // data.maxWage
          this.query.arr[3].value = data.hopeTrade; // data.maxWage
          this.query.arr[4].value = data.hopeJob; // data.maxWage

          // hope_job, hope_trade, hope_wage
          console.log(this.query, 'asd45a6s4d5a4sd6a4sd646as54d');
          this.getListPagetj();
        } else {
          this.$message.error(res.msg);
        }
      });
    },
    //推荐 一件投递  查询列表
    getListPagetj () {
      // 查询条件  简历里求职意向的 地点-->workExp，行业，职类，薪资
      //   值类：hope_job,
      //   行业：hope_trade,
      //   求职意向：work_place,
      //   工作地点：hope_wage
      var formData = new FormData();
      formData.append('page', this.query.page);
      formData.append('size', this.query.size);
      formData.append('condition', JSON.stringify(this.query.arr));
      listPagesTj(formData).then(res => {
        if (res.success) {
          let data = res.data.records || [];
          if (data) {
            data.map(item => {
              if (item.allureText) {
                item.allureText = item.allureText.split(',');
              }
            });
          }
          //   这里调用查询推荐简历列表的接口
          this.cities = data;
          console.log(data, '获取数据···············');
        } else {
          this.$message.error(res.msg);
        }
      });
    },
    // 换一换
    ChangeIt () {
      this.checkAll = false;
      this.checkedCities = [];
      this.isIndeterminate = false;
      this.query.page++;
      this.getListPagetj();
    },
    // 收藏
    favoriteSave (jobIds, comapnyId) {
      var formData = new FormData();
      formData.append('jobId', jobIds);
      formData.append('companyId', comapnyId);
      formData.append('userId', localStorage.getItem('ps_userId'));
      favoriteSave(formData).then(res => {
        if (res.success) {
          let data = res.data;
          this.$message({
            message: '收藏成功',
            type: 'success'
          });
          this.getListPagetj();
          // 调用我的收藏总数
          this.getCollectTotal();
          console.log(data, '收藏接口');
        } else {
          this.$message.error(res.msg);
        }
      });
    },
    // 取消收藏
    deleteFavorite (jobIds) {
      var formData = new FormData();
      formData.append('jobId', jobIds);
      formData.append('userId', localStorage.getItem('ps_userId'));
      deleteFavorite(formData).then(res => {
        if (res.success) {
          let data = res.data;
          this.$message({
            message: '取消收藏成功',
            type: 'success'
          });
          this.getListPagetj();
          console.log(data, '取消收藏');
          // 调用我的收藏总数
          this.getCollectTotal();
        } else {
          this.$message.error(res.msg);
        }
      });
    },
    // 多个一键申请弹框 选择简历
    deliverSave (val) {
      if (!localStorage.getItem('ps_Authorization')) {
        this.$message.error('您还没有登录，请先进行登录');
        return false;
      }
      // 查询简历列表
      gitInterface().then(res => {
        if (res.success) {
          this.resumelist = res.data;
          let isFlag = false; // 定义一个开关变量
          res.data.map(item => {
            if (item.express) { //有快速投递的直接投递简历
              isFlag = true;
              this.resumeId = item.id;
              return false;
            }
          })
          if (isFlag) { //有快速投递的直接投递简历
            // 直接申请职位
            this.getApplyPosition()
          } else { // 没设置快读投递的选择简历弹框显示
            this.innerVisible = true;
          }
          // res.data.map(item => {
          //   if (item.express) {
          //     this.resumeValue = item.title;
          //     this.resumeId = item.id;
          //     this.resumeChecked = true;
          //   }
          // });
          // this.resumelist = res.data;
          // this.innerVisible = true;
          // console.log(res, '简历列表');
        } else {
          console.log('错误');
        }
      });
    },
    // 申请职位[多个]
    getApplyPosition () {
      let idArr = [];
      let that = this;
      that.checkedCities.map(item => {
        idArr.push({
          jobId: item.id,
          companyId: item.companyId
        })
      })
      let formData = {
        "resumeId": this.resumeId,
        "dataJson": idArr
      }
      deliverSave(formData).then(res => {
        if (res.success) {
          that.$message({
            message: '投递成功',
            type: 'success'
          });
          setTimeout(() => {
            window.open(that.url + '/#/resumeDeliveredSuccess', '_blank')
          }, 500)
          that.checkedCities = [];
          that.checkAll = false;
          that.isIndeterminate = false;

        } else {
          that.$message.error(res.msg);
          that.checkedCities = [];
          that.isIndeterminate = false;
          that.checkAll = false
        }
      });
    },
    resumeValId (val) {
      this.resumeId = val;
    },
    // 关闭弹框
    closeResume () {
      this.resumeValue = '';
      this.resumeId = '';
      this.resumeChecked = false;
      // feat ：关闭
      this.isJobType = false
    },
    // 一键你申请单个【单个立即投递】
    deliverSave_determine () {
      if (!this.resumeValue) {
        this.$message.error('请选择简历');
        return false;
      }
      let item = this.resume;
      let that = this;
      let idArr = [
        {
          jobId: item.id,
          companyId: item.companyId
        }
      ];
      // feat: 后端改了传参格式
      let formData = {
        "resumeId": this.resumeId,
        "dataJson": idArr
      }
      deliverSave(formData).then(res => {
        if (res.success) {
          this.$message({
            message: '投递成功',
            type: 'success'
          });
          if (this.resumeChecked) {
            //  调用是否默认简历头覅
            this.updateExpress();
          } else {
            this.resumeValue = '';
          }
          // 调用我的申请统计数
          this.getApplyTotal();
          setTimeout(() => {
            window.open(that.url + `/#/resumeDeliveredSuccess?category=${this.resume.category}`, '_blank')
          }, 500)
          this.innerVisible = false;
        } else {
          this.$message.error(res.msg);
        }
      });
    },
    // 是否默认设置为此建立为快速投递投递简历
    updateExpress () {
      let obj = {
        express: this.resumeChecked,
        id: this.resumeId
      };
      updateExpress(obj).then(res => {
        if (res.success) {
          this.innerVisible = false;
          // this.$router.push('/resumeDeliveredSuccess')
          console.log('设置未默认简历成功');
          // let routeUrl = this.$router.push({
          //   path: this.url + '/#/resumeDeliveredSuccess',
          //   query: { category: '' }
          // })
          window.open(this.url + '/#/resumeDeliveredSuccess', '_blank')
        }
      });
    },

    // 一键申请全部
    Apply () {
      if (this.checkedCities.length == 0) {
        this.$message.error('请选择推荐的职位');
        return false;
      }
      let that = this;
      this.isAll = true;
      this.deliverSave();
    },
    // 一键申请单个
    oneDeliverSaveDialog (val) {
      if (!localStorage.getItem('ps_Authorization')) {
        this.$message.error('您还没有登录，请先进行登录');
        return false;
      }
      // feat: 该岗位为樟树市人才服务代招职位
      this.companyInfo = val
      if (val.jobType == 1) {
        this.isJobType = true
      } else {
        this.isAll = false
        // 查看简历
        gitInterface().then(res => {
          if (res.success) {
            let data = res.data;
            // 简历容器
            this.resumelist = res.data;
            let isFlag = false; // 设置变量开关 如果有默认简历 则为true 没有则为false
            data.map(item => {
              // 如果是快速投递的则直接投递并进入聊天页面，不是快速投递的则弹框显示
              if (item.express) {  // 快速投递
                isFlag = true;
                this.resumeId = item.id; // 获取简历id
                return false;
              }
            })
            if (isFlag) { // 有设置默认投递，则直接申请，不显示弹框, 如果没有默认设置则点击投递操作的时候就需要求职者选择一份自己的简历投递
              // 立即申请职位
              this.oneApply();
            } else {
              this.innerVisible = true;
            }
          } else {
            this.$message.error(`${res.msg}`)
          }
        })
        if (val) {
          this.resume = val
        }
      }
    },
    // 直接申请单个
    oneApply () {
      console.log(this.companyInfo, this.resumeId, '简历')
      let that = this;
      let idArr = [];
      idArr.push({
        jobId: this.companyInfo.id,
        companyId: this.companyInfo.companyId
      })
      let formData = {
        "resumeId": this.resumeId,
        "dataJson": idArr
      }
      deliverSave(formData).then(res => {
        if (res.success) {
          this.$message.success('投递成功!')
          setTimeout(() => {
            window.open(that.url + `/#/resumeDeliveredSuccess?category=${this.companyInfo.category}`, '_blank')
          }, 500)
        } else {
          this.$message.error(`${res.msg}`)
        }
      })
    },
    // 一键申请 全部【表单提交】
    allDeliverSave () {
      if (!this.resumeValue) {
        this.$message.error('请选择简历');
        return false;
      }
      let that = this;
      let idArr = [];
      that.checkedCities.map(item => {
        idArr.push({
          jobId: item.id,
          companyId: item.companyId
        });
      });
      // feat: 后端改了传参格式
      let formData = {
        "resumeId": this.resumeValue, // 选中的简历id
        "dataJson": idArr
      }
      deliverSave(formData).then(res => {
        if (res.success) {
          this.$message.success('投递成功!')
          if (that.resumeChecked) {
            that.updateExpress();
          } else {
            that.resumeValue = ''
          }
          window.open(that.url + '/#/resumeDeliveredSuccess', '_blank')
          that.checkedCities = [];
          that.isIndeterminate = false;
          that.innerVisible = false;
          // 调用我的申请统计数
          this.getApplyTotal();
        } else {
          that.$message.error(res.msg);
          that.checkedCities = [];
          that.isIndeterminate = false;
        }
      });
    },
    // 查询见简历详情
    resumeDetails () {
      resumeDetails(this.resumeId).then(res => {
        if (res.success) {
          let data = res.data;
          this.query.arr[0].value = data.hopeWage ? Number(data.hopeWage) : null
          this.query.arr[1].value = data.hopeWage ? Number(data.hopeWage) : null
          this.query.arr[2].value = data.workPlaceText; // data.maxWage
          this.query.arr[3].value = data.hopeTrade; // data.maxWage
          this.query.arr[4].value = data.hopeJob; // data.maxWage

          // hope_job, hope_trade, hope_wage
          console.log(this.query, 'asd45a6s4d5a4sd6a4sd646as54d');
          this.getListPagetj();
        } else {
          console.log('数据错误');
        }
      });
    },
    // 获取统计我的收藏总数
    getCollectTotal () {
      let condition = [];
      condition.push({ column: 'user_id', type: 'eq', value: localStorage.getItem('ps_userId') });
      let formData = new FormData();
      formData.append('condition', JSON.stringify(condition));
      collectTotal(formData).then(res => {
        if (res.success) {
          if (res.data != null) {
            // 给子组件发送收藏或取消的total
            this.$emit('sendFavoriteOrCancelEvent', res.data);
          }
        } else {
          this.$message.error(`${res.msg}`);
        }
      });
    },
    // 获取我的申请总数
    getApplyTotal () {
      let condition = [];
      condition.push({ column: 'user_id', type: 'eq', value: this.userId });
      let formData = new FormData();
      formData.append('condition', JSON.stringify(condition));
      applyTotal(formData).then(res => {
        if (res.success) {
          if (res.data != null) {
            // 给子组件发送申请统计的total
            this.$emit('sendApplayTotalEvent', res.data);
          }
        } else {
          this.$message.error(`${res.msg}`);
        }
      });
    },
    // 进入职位详情页
    enterDetailsPage (item) {
      window.open(this.url + '/#/JobHunting/jobdetail?id=' + item.id + '&category=' + item.category, '_blank')
    },
    // 进入主站中的公司详情页
    companyInfoDetailsPage (item) {
      window.open(this.url + '/#/Popularenterprises?companyId=' + item.companyId, '_blank')
    }
  },
  created () {
    // 获取默认路径
    this.url = process.env.BASE_URL;
    // this.getExpressResume();
  },
  watch: {
    recommenid: {
      handler (newId, oldId) {
        this.resumeId = newId;
        // id 变化更新简历
        if (newId) {
          // this.getExpressResume()
          this.resumeDetails();
        }
      },
      immediate: true
    }
  }
};
</script>

<style lang="css" scoped>
.listContainer {
    min-height: 140px;
}
.mt12 {
    margin-top: 12px;
}
.mt11 {
    margin-top: 11px;
}
.oneApply {
    width: 94px;
    height: 24px;
    background: rgba(24, 147, 252, 1);
    opacity: 1;
    font-size: 12px;
    font-family: PingFang SC;
    font-weight: 400;
    line-height: 24px;
    text-align: center;
    color: rgba(255, 255, 255, 1);
    margin: 0 16px;
    display: inline-block;
    cursor: pointer;
    opacity: 1;
}
.describe {
    font-size: 14px;
    font-family: PingFang SC;
    font-weight: 500;
    line-height: 16px;
    color: rgba(85, 85, 85, 1);
}
.change {
    font-size: 14px;
    font-family: PingFang SC;
    font-weight: 500;
    line-height: 16px;
    color: rgba(85, 85, 85, 1);
    cursor: pointer;
}

.oneRecommend {
    width: 140px;
    height: 20px;
    font-size: 14px;
    font-family: PingFang SC;
    font-weight: 500;
    line-height: 16px;
    color: rgba(85, 85, 85, 1);
    opacity: 1;
}
.oneChange {
    float: right;
    width: 50px;
    height: 20px;
    font-size: 14px;
    font-family: PingFang SC;
    font-weight: 500;
    line-height: 16px;
    color: rgba(85, 85, 85, 1);
    opacity: 1;
    cursor: pointer;
}
.Talent_pool /deep/ .el-card {
    border: none;
}
.Talent_pool /deep/.el-card__body {
    padding: 13px;
}
.listContainer /deep/.el-card__body {
    padding: 5px 20px;
}
.list {
    /* width: calc(100% - 20px); */
    min-height: 140px;
    padding: 0 20px;
    /* margin-top: 12px; */
    display: flex;
    justify-content: space-between;
}
.leftContent {
    height: calc(100% - 40px);
    width: calc(100% - 40px);
    padding: 20px 0px 20px;
    display: -webkit-box;
    flex-wrap: wrap;
}
.leftContent .el-checkbox {
    margin-top: 3px;
}
.rightContent {
    height: calc(100% - 40px);
    width: calc(100% - 120px);
    padding: 20px 0px 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.ageAdress {
    display: flex;
    justify-content: flex-start;
    height: 55px;
    align-items: center;
}
.info .name {
    /* height: 38px; */
    font-size: 16px;
    font-family: PingFang SC;
    font-weight: 400;
    /* line-height:38px; */
    color: rgba(51, 51, 51, 1);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
}

.salary {
    height: 38px;
    font-size: 16px;
    font-family: PingFang SC;
    font-weight: 400;
    line-height: 38px;
    color: rgba(253, 78, 64, 1);
    white-space: nowrap;
}
.area {
    height: 38px;
    margin-left: 35px;
    font-size: 14px;
    font-family: PingFang SC;
    font-weight: 400;
    line-height: 38px;
    color: rgba(85, 85, 85, 1);
    white-space: nowrap;
}
.area .prev-line:not(:first-child)::before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    margin: -2px 10px 0;
    width: 1px;
    height: 12px;
    background-color: #707070;
}
.compaNameageAdress .area {
    height: 38px;
    margin-left: 0px;
    font-size: 14px;
    font-family: PingFang SC;
    font-weight: 400;
    line-height: 55px;
    color: rgba(85, 85, 85, 1);
}
.leftContent .info {
    width: 387px;
    display: flex;
    flex-direction: column;
}
.tag-group {
    height: 30px;
    line-height: 30px;
}
.tag-group .el-tag--plain.el-tag--info {
    margin-right: 10px;
}

.rightContent .compaName {
    width: 200px;
    width: 250px;
    height: 100%;
}
.compaName .collectionCon {
    /* border: 1px solid green; */
    height: 60px;
    line-height: 60px;
    text-align: right;
}
.rightContent .companyLogo {
    width: 94px;
    height: 103px;
    position: relative;
}
.companyLogo .logo {
    width: 68px;
    height: 68px;
    position: absolute;
    right: 0;
    background: rgba(242, 242, 242, 1);
    opacity: 1;
    border-radius: 6px;
}
.companyLogo .logo img {
    width: 100%;
    height: 100%;
}
.Collection {
    font-size: 14px;
    cursor: pointer;
    color: #555555;
}
.Collection img {
    width: 17px;
    height: 17px;
    vertical-align: text-bottom;
}
.active {
    color: #1893fc;
}

.oneApplyTwo {
    width: 78px;
    height: 24px;
    background: rgba(24, 147, 252, 1);
    opacity: 1;
    font-size: 12px;
    font-family: PingFang SC;
    font-weight: 400;
    line-height: 24px;
    text-align: center;
    color: rgba(255, 255, 255, 1);
    margin: 0 16px;
    display: inline-block;
    cursor: pointer;
    position: absolute;
    bottom: 0;
    opacity: 1;
}

/* 弹框 */
.checkouts /deep/ .el-checkbox {
    height: 60px;
    line-height: 60px;
}
/* 没数据时样式 */
.noData {
    width: 100%;
    height: 50px;
    text-align: center;
}
.jonDz /deep/ .el-dialog__header {
    border-bottom: 1px solid #e5e5e5;
}
.jonDz /deep/ .el-dialog__footer {
    padding: 40px 20px 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.jobItem {
    margin-bottom: 10px;
}
</style>